a
{
    color: inherit;
    outline: none;
}

body
{
    font-family: Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif;

    overflow: hidden;

    margin: 0 0 0 calc(100% - 400px);

    cursor: default;
    -webkit-user-select: none;
            user-select: none;

    color: white;
    background-color: rgb(24, 37, 77);
}

::-webkit-scrollbar
{
    width: 10px;
    height: 100%;
}

::-webkit-scrollbar-thumb
{
    border-radius: 10px;
    background-color: rgba(0, 0, 0, .3);
}

fieldset
{
    margin: 20px 0;
    padding: 10px;

    border-top: 1px solid rgba(255, 255, 255, .1);
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    border-left: none;
    background-color: rgba(0, 0, 0, .1);
}

header
{
    position: fixed;
    left: 0;

    display: flex;

    width: calc(100% - 400px);
    height: 100%;

    box-shadow: 0 0 5px black;

    align-items: flex-start;
}

iframe
{
    display: none;

    width: 100%;
    height: 100%;

    border: none;
    border-radius: 10px;
}

legend
{
    line-height: 1.5;

    margin: 0 auto;

    color: white;
}

main
{
    display: block;
    overflow: auto;

    height: 100%;
}

nav
{
    display: block;

    height: 100vh;
}

svg
{
    width: 20px;
    height: 20px;

    transform: translate(20%, 27%);

    fill: white;
}

.bg-img
{
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    transition: all 3s linear;
    transform: scale(1.1);

    opacity: .7;

    object-fit: cover;
    filter: blur(6px);
}

.description
{
    font-size: 14px;

    color: rgba(255, 255, 255, .5);
}

.div_user
{
    font-family: inherit;

    position: absolute;
    top: 15px;
    right: 15px;

    display: block;

    padding: 6px 15px 10px 20px;

    text-align: center;

    color: white;
    border: none;
    border-radius: 5px;
    background-color: rgba(255, 255, 255, .3);
}

.div_user:active
{
    top: 16px;
}

.list a
{
    line-height: 22px;

    display: block;

    padding: 10px 20px;

    cursor: default;
    text-decoration: none;

    background-color: rgba(0, 0, 0, .1);
}

.list a:focus,
.list a:hover,
.menu a:focus,
.menu a:hover
{
    background-color: rgba(255, 255, 255, .1);
}

.list a:active,
.menu a:active
{
    background-color: rgba(255, 255, 255, .1);
}

.list fieldset a
{
    padding: 10px 20px;

    border-radius: 5px;
    background-color: transparent;
}

.logo
{
    font-family: Georgia, 'Microsoft YaHei', sans-serif;
    font-size: 20px;
    font-style: italic;

    position: absolute;
    top: 10px;
    left: 15px;

    width: 460px;

    color: rgba(255, 255, 255, .5);
    text-shadow: 1px 1px 0 rgba(255, 255, 255, .2);
}

.main-content
{
    position: relative;

    display: block;

    width: 84%;
    height: 76%;
    margin-top: 8%;
    margin-left: 7%;

    text-align: center;

    border-radius: 10px;
    background-color: rgba(255, 255, 255, .1);
}

.main-content span
{
    font-size: 32px;

    display: inline-block;

    margin-top: 30%;

    color: rgba(255, 255, 255, .3);
}

.menu
{
    position: absolute;
    z-index: 1100;
    top: 57px;
    right: 15px;

    display: none;

    min-width: 130px;

    animation: popUp .4s linear;
    text-align: left;

    border-radius: 5px;
    background-color: rgba(255, 255, 255, .3);
    box-shadow: 0 0 5px rgba(255, 255, 255, .1);

    backdrop-filter: blur(20px);
}

.menu a
{
    line-height: 25px;

    display: block;

    padding: 5px 15px;

    white-space: nowrap;
    text-decoration: none;
}

.menu a:first-of-type
{
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.menu a:last-of-type
{
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}

.menu svg
{
    width: 16px;
    height: 16px;

    transform: translate(20%, 10%);
}

.svg_expand
{
    position: absolute;
    top: 0;
    right: 5px;

    display: none;
}

@keyframes popUp
{
    0%
    {
        transform: scale(.8);

        opacity: 0;
    }
    50%
    {
        transform: scale(.9);

        opacity: .5;
    }
    100%
    {
        transform: scale(1);

        opacity: 1;
    }
}

@media (max-width: 800px)
{
    body
    {
        height: 100%;
        margin: 0 !important;

        border-right: none;
    }

    header
    {
        position: static;

        width: 100%;
        height: calc(100% - 46px);

        box-shadow: none;
    }

    .logo
    {
        display: none;
    }

    .main-content span
    {
        font-size: 20px;

        display: inline;
    }
}
